package cn.net.Inner;

public class TestInner3 {
    public static void main(String[] args) {
//        //方式一：创建内部类对象访问show()
//        Outer3.Inner3 oi = new Outer3().new Inner3();
//        oi.show();
//        //方式二:创建匿名内部类对象访问show()
//        new Outer3().new Inner3().show();
                     /*内部类加了static，之前的创建对象方式不适用了*/
        Outer3.Inner3 in = new Outer3.Inner3();//方式一：通过外部类的类名来创建内部类的对象
        in.show();
        //方式二：通过匿名内部类调用show2
        new Outer3.Inner3().show2();
    }
}
class Outer3{
    static class Inner3{//5.内部类被static修饰—静态内部类并不常用!浪费内存!
        public void show(){
            System.out.println("Inner3....show()普通成员方法");
        }
        public static  void show2(){//static静态方法
            System.out.println("Inner3....show2()静态方法");
        }
    }
}